New Learning Path: Deploy containerized workloads with Topo - #3193
Conversation
Signed-off-by: Tomás González <tomasagustin.gonzalezorlando@arm.com>
The project has been renamed and its compose file has changed. Signed-off-by: Tomás González <tomasagustin.gonzalezorlando@arm.com>
One of the coolest features about Topo is that it allows the user to deploy firmware + application software as containerized workloads to an heterogenous device with a single command and through standard container tools. Signed-off-by: Tomás González <tomasagustin.gonzalezorlando@arm.com>
Topo not only saves you the troubles of setting everything up, making sure there are no incompatibility issues as well as having the necessary dependencies, etc. Topo also helps you deploy in a simple command. Instead of having to execute multiple SSH + container engine commands all in sequence, Topo automates all of that away so that you don't have to deal with that. Signed-off-by: Tomás González <tomasagustin.gonzalezorlando@arm.com>
1. It was already mentioned in the same paragraph that Topo is open-source/pubic. 2. Even though it's true that the templates are listed in a special file in the repository, this file is not meant for showcasing the templates but rather they are showcased by the `topo templates` command. In the future, we may be pulling this file from somewhere else. 3. "pre-built" is not technically correct as the images need to be built by the `topo deploy` command. Signed-off-by: Tomás González <tomasagustin.gonzalezorlando@arm.com>
Instead of:
build container images on host -> transfer to target -> start
services on
target
Topo also supports:
build container images on target -> start services on target
... by using localhost as the target.
Signed-off-by: Tomás González <tomasagustin.gonzalezorlando@arm.com>
Topo health already checks for Host dependencies like SSH and Docker. It also provides hints on how to resolve the issues. * Suggest running Topo health first on the Host and then on the target. Splitting it in two may help address the issues separately. Signed-off-by: Tomás González <tomasagustin.gonzalezorlando@arm.com>
In certain scenarios, Warnings can indicate that the user needs to install something in the target. Topo is unsure as to whether this will be needed or not in the user's project, so it turns the missing dependency into a warning rather than an error, but this doesn't mean that the dependency is entirely optional in all scenarios. Signed-off-by: Tomás González <tomasagustin.gonzalezorlando@arm.com>
Signed-off-by: Tomás González <tomasagustin.gonzalezorlando@arm.com>
Suggest changes to the Topo Learning Path
|
Learning path has had technical review from @tgonzalezorlandoarm from DevX Topo team |
Set the draft status for the Topo deployment guide.
| topo describe --target user@my-target | ||
| ``` | ||
|
|
||
| This writes a `target-description.yaml` file in your current directory. |
There was a problem hiding this comment.
The description gets generated on stdout. I didn't see the yaml created - running on Mac host. I piped the output to the yaml to continue on.. but then see next comment
| Use the following command on your host device to to list templates according to the target description: | ||
|
|
||
| ```bash | ||
| topo templates --target-description target-description.yaml |
There was a problem hiding this comment.
parver01@KWJY1XP2MT ~ % topo templates --target-description target-description.yaml
15:44:09 ERR unknown flag: --target-description
So then I tried "topo templates target-description.yaml" but that gives me all the templates not templates fit for target
| You can also query templates directly by specifying the target: | ||
|
|
||
| ```bash | ||
| topo templates --target user@my-target |
There was a problem hiding this comment.
querying directly works
|
Followed-up with Topo team. They made a small API change changing the behaviour of Will remove these from the LP and raise a new PR: #3232 Have set-up a watch on Topo releases where they note any breaking changes so will be aware if this needs any other small updates in future. |
Before submitting a pull request for a new Learning Path, please review Create a Learning Path
Please do not include any confidential information in your contribution. This includes confidential microarchitecture details and unannounced product information.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of the Creative Commons Attribution 4.0 International License.